The present invention relates to a multicarrier or discrete multi tone (DMT) modulated transmission system, in which the modulation may be effected using a fast inverse Fourier transform (IFFT). More specifically, the invention relates to a method for bit allocation in such a transmission system and to the transmission system itself.
Multicarrier modulation is a technique in which a data stream is divided into several interleaved bit streams. The bit streams are used to modulate several carriers, whereafter the modulated carriers are summed for transmission.
Detailed descriptions of the principle of multicarrier modulation may be found in J.A.C. Bingham, Multicarrier modulation for data transmission: an idea whose time has come, IEEE Communications Magazine, May 1990, pp. 5-14, and in references therein.
The carriers, which are spaced within a useable frequency band, and of which each is constituting a subchannel, are modulated at a block or symbol transmission rate. The number of bits of input data per block or symbol nj, and the proportion nj of total transmitted power P, that are allocated to each carrier or subchannel j, are preferably determined to maximize the signal-to-noise ratio (SNR) at a given bit rate or to maximize the bit rate at a given maximally allowed overall signal-to-noise ratio (SNR).
This is approximately achieved by choosing the variables nj and xcex3j so that the bit error rates in all subchannels are substantially equal. As a consequence, the different subchannels may transfer different number of bits per symbol and/or use different transmitting powers. Various techniques have been proposed to determine the bit allocation factors nj and the power portions xcex3j at different conditions.
Through the U.S. Pat. No. 4,438,511 (dated 1984) issued to Baran a rather simple bit rate reduction technique is known in which each subchannel carries a predetermined number of bits at a specified power level. The noise at each frequency is measured and a decision is made whether to transmit or not at each carrier frequency. Thus, this technique compensates for the actual distribution of noise over the available frequency range, but to the cost of a reduced bit rate.
The well known water-filling algorithm, described in e.g. J. G. Proakis, Digital Communication, 3rd edition, McGraw-Hill, New York, 1995 is the information theoretic method for optimizing the power distribution among the subchannels. A noise spectrum is measured, i.e., the noise as a function of the frequency, whereafter available power is allocated to the subchannels in such a manner that the sum of the noise and the power is equal for all of the subchannels. The maximum number of bits to be allocated to each subchannel is then calculated from the power distribution obtained and the desired bit-error-rate of each subchannel. The water-filling algorithm is, however, difficult to implement due to computational difficulties and that it may result in non-integer constellations sizes.
One implementation for constellations with integer numbers of allocated bits is described in the U.S. Pat. Nos. 4,679,227, 4,731,816 and 4,833,706 (1987-1989) issued to Hughes-Hartogs. The basic principle is to incrementally add, one bit at a time, the amount of data to be transmitted in each symbol until a predetermined data rate or power constraint is reached. The subchannel to which a bit is allocated is chosen as the one who requires the least amount of incremental power at a given bit-error rate. This technique is, however, slow in convergence and assumes a time invariant signal-to-noise ratio of the subchannels.
In order to obtain faster convergence to the cost of a slightly degraded performance Chow et al. proposed another technique described in, e.g., the U.S. Pat. No. 5,479,447 (1995). According to this technique, which may also take time-varying characteristics of the transmission medium into account and hence maintain optimal bit allocation during system operation, an initial optimal transmission rate based on initial signal-to-noise ratio estimates of the subchannels is determined. Then, the total number of bits per symbol to be transmitted in each subchannel is determined through an initial bit allocation method, in which convergence is guaranteed with a suboptimal loop. The energy distribution among the subchannels may be adjusted according to some constraint regarding the transmit power distribution. Lastly, system operation adaptivity is achieved by monitoring the subchannel noise and changing the transmission rate and/or the bit allocation within the symbol in real-time.
The main limitations with these algorithms as described is that they are too primitive (Baran) or slow and involve extended numerical calculations and sorting (Hughes-Hartogs, Chow et al.).
Baran""s algorithm does not actually allocate bits to carriers according to a changed SNR distribution among the subchannels; it merely terminates subchannels that have lower SNR than some predetermined value.
The Chow et al. algorithm with its extended numerical calculations involving, inter alia, a number of computationally complex steps, is best run on a microprocessor. Thus, the algorithm increases system cost and reduces speed.
It is an object of the present invention to provide a method for allocating bits to carriers in a multicarrier or discrete multi tone (DMT) modulated transmission system that uses less computational power as compared with bit allocation in prior art and to provide the transmission system.
It is a further object of the invention to provide the allocating of bits to carriers at a fast rate.
It is yet a further object of the invention to provide the allocating of bits to carriers as being implemented in specific hardware.
It is still a further object of the invention to provide the allocating of bits to carriers at system startup and/or during system operation.
These objects among others are, according to one aspect of the invention, fulfilled by a method and system that comprises the following steps. A quality factor lj is associated to each carrier j, j=1, . . . , N. A loading constant Lc is computed as the quotient of a difference and the number of carriers Nr that remain to get bits allocated, said difference being the difference of the sum of the quality factors lk for carriers k, k=1, . . . , N, that remain to get bits allocated and the total number of data bits nr that remain to be allocated. Then a number of bits ni is allocated to a carrier i that remains to get bits allocated, said number of bits nl being the difference of the quality factor ll and the loading constant Lc rounded to nearest integer. The step of allocating a number of bits to a carrier is repeated for other carriers until a predetermined fraction of the carriers that remain to get bits allocated have bits allocated. Finally, all steps but the first (associating a quality factor lj to each carrier j, j=1, . . . , N) are repeated until all carriers j have bits allocated.
However, in specific situations the difference of the quality factor lj and the loading constant Lc rounded to nearest integer, i.e., the number of bits nj that is to be allocated to a carrier j, may be lower than zero or very high. Values lower than zero are of course not possible to allocate and hardware limitations often specify a maximum number of bits nmax to be allocated to a single carrier. Consequently, there is a need to handle these kind of extreme values of nj.
This need is, according to another aspect of the present invention, fulfilled by a method and system that in addition to all of the above described steps comprises the following steps. If the number of bits nj for any carrier j falls above nmax, the quality factor lj for that carrier/those carriers j is set to the sum of the maximum number of bits nmax and the loading constant Lc rounded to nearest integer. If the number of bits nj for any carrier j falls below zero, the quality factor lj for that carrier/those carriers j is set to the value of the loading constant Lc rounded to nearest integer. Finally, if the number of bits nj for any carrier j has fallen outside the range [0,nmax] and consequently been set to a new value, all steps except the first step (associating a quality factor lj to each carrier j, j=1, . . . , N) are repeated. This iterative procedure is continued until all carriers j have a number of bits allocated that falls inside the range [0,nmax].
Preferably, the quality factor lj, j 1, . . . , N, is related to a noise variance or an error on the corresponding carrier j. The quality factor is by preference set to the two-logarithm of the inverse of the noise variance to which an offset factor xcex4j may be, but not necessarily, added.
The noise variance may be measured on a receiver side of the transmission system, e.g., as the absolute value of the difference of received signal and sent signal (or what is believed to be the sent signal).
The allocating of bits to carriers in an inventive manner may be performed at startup of the transmission system or during operation of the transmission system. In the latter case, the inventive allocating of bits may be performed if the noise changes in some manner. To discover a change in the noise, it may be measured continuously or at least on a regular basis.
The predetermined fraction of carriers to which bits are allocated before a new loading constant Lc is computed may be chosen as one half of the carriers that remain to get bits allocated. This value facilitates hardware implementation of the invention since the division in the calculation of the loading constant may be effected by a shift operation.
An advantage of the present invention is that the bit computation is simple and rapid, thus permitting adaptive allocation of bits in real time to accommodate, for example, changing carrier conditions.
Another advantage of the invention is that the simplified procedures allows implementation using dedicated hardware for improved speed.